// 定义一个函数的泛型/参数的泛型
function output<T>(n:T[]):T[]{
    console.log(n.length)
    return n;
}
// function output2(n:string){
//     return n;
// }

// 调用
output([6,7,8])
output(["a","b","c"]);


// 类的泛型
class Stu<T>{
    list:T[]=[];
    add(v:T){
        this.list.push(v);
    }
}

// 实例化类
let s1 = new Stu<string>();
s1.add("aa");
s1.add("bb");
console.log(s1.list);